
//调用 this.$http.post或者this.$http.get
// /api 指代  http://127.0.0.1:3000
//get 直接传入url
//post 传入data
//使用方法 例：
//  this.$http.post({                   
    // url: '/api/goods/good_detail',
    // data:{
    //   "id":1001
    // }
//   })
import axios from 'axios'
const instance = axios.create({
  timeout: 600000,

})

// 添加请求拦截器
instance.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  
  config.headers = {
    // 'X-Host': 'mall.film-ticket.city.list'
    'Access-Control-Allow-Origin':'*',
    
  }

  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
});

const get = ({url, params}) => {
  // 为了捕获错误，我们自己封装了一个Promise
  return new Promise((resolve, reject) => {
    // axios 请求
    instance.get(
      url ,
      {
        params
      }
    )
    .then((result) => {
      resolve(result.data)
    })
    .catch((err) => {
      reject(err.message)
    })
  })
}

const post = ({url, data={}}) => {
    return new Promise((resolve, reject) => {
         instance.post(
          url,
           data)
        .then(res => {
            resolve(res.data);
        })
        .catch(err =>{
            reject(err.data)
        })
    });
}

export {
  get,
  post
}